內文皆使用 MySQL 語法
CREATE TABLE users (
-- 主鍵 必帶有 UNIQUE 特性
id INT AUTO_INCREMENT,
name VARCHAR(100) UNIQUE,
phone VARCHAR(10) NOT NULL,
location VARCHAR(100) DEFAULT 'taiwan',
-- MySQL 無法使用 CHECK
age INT(10) CHECK (age>0),
CONSTRAINT pk_UserID PRIMARY KEY (id,name)
)
CREATE TABLE users (
-- 主鍵 必帶有 UNIQUE 特性
id INT AUTO_INCREMENT,
name VARCHAR(50),
CONSTRAINT pk_UserID PRIMARY KEY (id,name)
);
-- 變更主鍵 (必須確定該欄位為 NOT NULL)
ALTER TABLE users ADD PRIMARY KEY (id);
ALTER TABLE users ADD PRIMARY KEY (id, name);
-- 外來鍵 組成 主鍵
CREATE TABLE sc(
sno VARCHAR(10), -- 學生編號 (學生資料表主鍵)
cno VARCHAR(10), -- 課程編號 (課程資料表主鍵)
score INT(4), -- 分數
CONSTRAINT pk_score PRIMARY KEY (sno,cno)
);
CREATE TABLE ORDERS (
Order_ID INT(100) AUTO_INCREMENT,
Order_Date TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
Customer_SID INT(100),
AMOUNT INT(100),
PRIMARY KEY (Order_ID),
FOREIGN KEY (Customer_SID) REFERENCES CUSTOMER (SID)
);
-- 新增外來鍵
ALTER TABLE ORDERS ADD FOREIGN KEY (Customer_SID) REFERENCES CUSTOMER (SID);